const defs = {
    default: {
        icon: '_default_file',
        format: 'svg'
    },
    supported: [
        {
            icon: 'access',
            extensions: [
                'accdb',
                'accdt',
                'mdb',
                'accda',
                'accdc',
                'accde',
                'accdp',
                'accdr',
                'accdu',
                'ade',
                'adp',
                'laccdb',
                'ldb',
                'mam',
                'maq',
                'mdw'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'ai', extensions: ['ai'], format: 'svg', names: [] },
        { icon: 'al_dal', extensions: ['dal'], format: 'svg', names: [] },
        {
            icon: 'allcontributors',
            extensions: [],
            format: 'svg',
            names: ['.all-contributorsrc']
        },
        {
            icon: 'affinitydesigner',
            extensions: ['afdesign', 'affinitydesigner'],
            format: 'svg',
            names: []
        },
        {
            icon: 'affinityphoto',
            extensions: ['afphoto', 'affinityphoto'],
            format: 'svg',
            names: []
        },
        {
            icon: 'affinitypublisher',
            extensions: ['afpub', 'affinitypublisher'],
            format: 'svg',
            names: []
        },
        { icon: 'appscript', extensions: ['gs'], format: 'svg', names: [] },
        { icon: 'fitbit', extensions: ['fba'], format: 'svg', names: [] },
        {
            icon: 'angular',
            extensions: [],
            format: 'svg',
            names: ['.angular-cli.json', 'angular-cli.json', 'angular.json', '.angular.json']
        },
        { icon: 'ng_tailwind', extensions: [], format: 'svg', names: ['ng-tailwind.js'] },
        {
            icon: 'api_extractor',
            extensions: [],
            format: 'svg',
            names: ['api-extractor.json', 'api-extractor-base.json']
        },
        {
            icon: 'appsemble',
            extensions: [],
            format: 'svg',
            names: ['.appsemblerc.yaml', 'app-definition.yaml']
        },
        {
            icon: 'appveyor',
            extensions: [],
            format: 'svg',
            names: ['appveyor.yml', '.appveyor.yml']
        },
        { icon: 'arduino', extensions: ['ino', 'pde'], format: 'svg', names: [] },
        { icon: 'aspx', extensions: ['aspx', 'ascx'], format: 'svg', names: [] },
        { icon: 'assembly', extensions: ['asm', 's'], format: 'svg', names: [] },
        { icon: 'astro', extensions: ['astro'], light: true, format: 'svg', names: [] },
        {
            icon: 'astroconfig',
            filenamesGlob: ['astro.config'],
            extensions: [],
            extensionsGlob: ['js', 'cjs', 'mjs', 'ts'],
            light: true,
            format: 'svg',
            names: ['astro.config.js', 'astro.config.cjs', 'astro.config.mjs', 'astro.config.ts']
        },
        { icon: 'atom', extensions: ['atom'], format: 'svg', names: [] },
        {
            icon: 'audio',
            extensions: [
                'aac',
                'act',
                'aiff',
                'amr',
                'ape',
                'au',
                'dct',
                'dss',
                'dvf',
                'flac',
                'gsm',
                'iklax',
                'ivs',
                'm4a',
                'm4b',
                'm4p',
                'mmf',
                'mogg',
                'mp3',
                'mpc',
                'msv',
                'oga',
                'ogg',
                'opus',
                'ra',
                'raw',
                'tta',
                'vox',
                'wav',
                'wma'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'aurelia', extensions: [], format: 'svg', names: ['aurelia.json'] },
        { icon: 'avif', extensions: ['avif'], format: 'svg', names: [] },
        { icon: 'awk', extensions: ['awk'], format: 'svg', names: [] },
        {
            icon: 'azurepipelines',
            extensions: [],
            format: 'svg',
            names: ['azure-pipelines.yml', '.vsts-ci.yml']
        },
        {
            icon: 'babel',
            extensions: [],
            filenamesGlob: ['.babelrc', 'babel.config'],
            extensionsGlob: ['js', 'cjs', 'mjs', 'json'],
            light: true,
            format: 'svg',
            names: [
                '.babelrc',
                '.babelignore',
                '.babelrc.js',
                '.babelrc.cjs',
                '.babelrc.mjs',
                '.babelrc.json',
                'babel.config.js',
                'babel.config.cjs',
                'babel.config.mjs',
                'babel.config.json'
            ]
        },
        { icon: 'bazaar', extensions: [], format: 'svg', names: ['.bzrignore'] },
        {
            icon: 'bazel',
            extensions: [],
            format: 'svg',
            names: ['BUILD.bazel', '.bazelrc', 'bazel.rc', 'bazel.bazelrc']
        },
        { icon: 'bazel_ignore', extensions: [], format: 'svg', names: ['.bazelignore'] },
        { icon: 'bazel_version', extensions: [], format: 'svg', names: ['.bazelversion'] },
        {
            icon: 'binary',
            extensions: [
                'a',
                'app',
                'bin',
                'cmo',
                'cmx',
                'cma',
                'cmxa',
                'cmi',
                'dll',
                'exe',
                'hl',
                'ilk',
                'lib',
                'n',
                'ndll',
                'o',
                'obj',
                'pyc',
                'pyd',
                'pyo',
                'pdb',
                'scpt',
                'scptd',
                'so'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'bithound', extensions: [], format: 'svg', names: ['.bithoundrc'] },
        {
            icon: 'bitbucketpipeline',
            extensions: [],
            format: 'svg',
            names: ['bitbucket-pipelines.yml']
        },
        { icon: 'blitzbasic', extensions: ['bb'], format: 'svg', names: [] },
        { icon: 'bower', extensions: [], format: 'svg', names: ['.bowerrc', 'bower.json'] },
        {
            icon: 'browserslist',
            extensions: [],
            format: 'svg',
            names: ['.browserslistrc', 'browserslist']
        },
        { icon: 'buckbuild', extensions: [], format: 'svg', names: ['.buckconfig'] },
        {
            icon: 'buf',
            extensions: [
                'buf.yaml',
                'buf.yml',
                'buf.gen.yml',
                'buf.gen.yaml',
                'buf.work.yaml',
                'buf.work.yml'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'bun', extensions: ['bun', 'lockb'], format: 'svg', names: [] },
        {
            icon: 'bundlemon',
            extensions: [],
            filenamesGlob: ['.bundlemonrc'],
            extensionsGlob: ['js', 'mjs', 'cjs', 'json', 'yaml', 'yml'],
            format: 'svg',
            names: [
                '.bundlemonrc',
                'bundlemon.config.js',
                'bundlemon.config.mjs',
                'bundlemon.config.cjs',
                '.bundlemonrc.js',
                '.bundlemonrc.mjs',
                '.bundlemonrc.cjs',
                '.bundlemonrc.json',
                '.bundlemonrc.yaml',
                '.bundlemonrc.yml'
            ]
        },
        { icon: 'bundler', extensions: ['gemfile', 'gemfile.lock'], format: 'svg', names: [] },
        { icon: 'bundler', extensions: [], format: 'svg', names: ['gemfile', 'gemfile.lock'] },
        { icon: 'bunfig', extensions: [], format: 'svg', names: ['bunfig.toml'] },
        { icon: 'cake', extensions: ['cake'], format: 'svg', names: [] },
        {
            icon: 'capacitor',
            extensions: [],
            extensionsGlob: ['json'],
            filenamesGlob: ['capacitor.config'],
            format: 'svg',
            names: ['capacitor.config.json']
        },
        { icon: 'cargo', extensions: [], format: 'svg', names: ['cargo.toml', 'cargo.lock'] },
        {
            icon: 'cert',
            extensions: [
                'csr',
                'crt',
                'cer',
                'der',
                'pfx',
                'p12',
                'p7b',
                'p7r',
                'src',
                'crl',
                'sst',
                'stl'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'cf', extensions: ['lucee'], format: 'svg', names: [] },
        { icon: 'cheader', extensions: ['h'], format: 'svg', names: [] },
        {
            icon: 'chef',
            extensions: [],
            format: 'svg',
            names: [
                'chefignore',
                'berksfile',
                'berksfile.lock',
                'policyfile.rb',
                'policyfile.lock.json'
            ]
        },
        { icon: 'class', extensions: ['class'], format: 'svg', names: [] },
        {
            icon: 'circleci',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['circle.yml']
        },
        { icon: 'clojure', extensions: ['cjm', 'cljc'], format: 'svg', names: [] },
        { icon: 'clojurescript', extensions: ['cljs'], format: 'svg', names: [] },
        {
            icon: 'cloudfoundry',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.cfignore']
        },
        {
            icon: 'codeowners',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['codeowners']
        },
        {
            icon: 'codacy',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.codacy.yml', '.codacy.yaml']
        },
        {
            icon: 'codeclimate',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.codeclimate.yml']
        },
        {
            icon: 'codecov',
            extensions: [],
            format: 'svg',
            names: ['codecov.yml', '.codecov.yml']
        },
        { icon: 'codekit', extensions: ['kit'], format: 'svg', names: [] },
        {
            icon: 'codekit',
            extensions: [],
            format: 'svg',
            names: [
                'config.codekit',
                'config.codekit2',
                'config.codekit3',
                '.config.codekit',
                '.config.codekit2',
                '.config.codekit3'
            ]
        },
        { icon: 'coderabbit', extensions: [], format: 'svg', names: ['.coderabbit.yaml'] },
        {
            icon: 'coffeelint',
            extensions: [],
            format: 'svg',
            names: ['coffeelint.json', '.coffeelintignore']
        },
        {
            icon: 'conan',
            extensions: [],
            format: 'svg',
            names: ['conanfile.txt', 'conanfile.py']
        },
        { icon: 'conda', extensions: [], format: 'svg', names: ['.condarc'] },
        { icon: 'config', extensions: ['plist', 'conf'], light: true, format: 'svg', names: [] },
        {
            icon: 'config',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.tool-versions']
        },
        { icon: 'commitizen', extensions: [], format: 'svg', names: ['.czrc', '.cz.json'] },
        { icon: 'commitlint', extensions: [], format: 'svg', names: ['.commitlintrc'] },
        {
            icon: 'commitlint',
            extensions: [],
            filenamesGlob: ['.commitlintrc'],
            extensionsGlob: ['json', 'yaml', 'yml', 'js', 'cjs', 'mjs', 'ts', 'cts'],
            format: 'svg',
            names: [
                'commitlint.config.js',
                'commitlint.config.cjs',
                'commitlint.config.mjs',
                'commitlint.config.ts',
                'commitlint.config.cts',
                '.commitlintrc.json',
                '.commitlintrc.yaml',
                '.commitlintrc.yml',
                '.commitlintrc.js',
                '.commitlintrc.cjs',
                '.commitlintrc.mjs',
                '.commitlintrc.ts',
                '.commitlintrc.cts'
            ]
        },
        {
            icon: 'composer',
            extensions: [],
            format: 'svg',
            names: ['composer.json', 'composer.lock']
        },
        { icon: 'coverage', extensions: [], format: 'svg', names: ['.coverage', 'lcov.info'] },
        { icon: 'coverage', extensions: ['lcov'], format: 'svg', names: [] },
        { icon: 'coveralls', extensions: [], format: 'svg', names: ['.coveralls.yml'] },
        {
            icon: 'cppheader',
            extensions: ['hpp', 'hh', 'hxx', 'h++'],
            format: 'svg',
            names: []
        },
        { icon: 'crowdin', extensions: [], format: 'svg', names: ['crowdin.yml'] },
        { icon: 'csharp', extensions: ['csx'], format: 'svg', names: [] },
        {
            icon: 'cspell',
            extensions: [],
            filenamesGlob: ['cspell.config', 'cspell', '.cspell'],
            extensionsGlob: ['json', 'js', 'cjs', 'yaml', 'yml'],
            format: 'svg',
            names: [
                'cspell.config.json',
                'cspell.config.js',
                'cspell.config.cjs',
                'cspell.config.yaml',
                'cspell.config.yml',
                'cspell.json',
                'cspell.js',
                'cspell.cjs',
                'cspell.yaml',
                'cspell.yml',
                '.cspell.json',
                '.cspell.js',
                '.cspell.cjs',
                '.cspell.yaml',
                '.cspell.yml'
            ]
        },
        { icon: 'csproj', extensions: ['csproj'], format: 'svg', names: [] },
        { icon: 'csscomb', extensions: [], format: 'svg', names: ['.csscomb.json'] },
        { icon: 'csslint', extensions: [], format: 'svg', names: ['.csslintrc'] },
        { icon: 'cssmap', extensions: ['css.map'], format: 'svg', names: [] },
        {
            icon: 'cypress',
            extensions: [],
            light: true,
            format: 'svg',
            names: [
                'cypress.json',
                'cypress.env.json',
                'cypress.config.js',
                'cypress.config.ts',
                'cypress.config.cjs',
                'cypress.config.mjs'
            ]
        },
        {
            icon: 'cypress_spec',
            extensions: ['cy.js', 'cy.mjs', 'cy.cjs', 'cy.coffee', 'cy.ts', 'cy.tsx', 'cy.jsx'],
            light: true,
            format: 'svg',
            names: []
        },
        { icon: 'cvs', extensions: [], format: 'svg', names: ['.cvsignore'] },
        { icon: 'darcs', extensions: [], format: 'svg', names: ['.boringignore'] },
        {
            icon: 'dartlang_generated',
            extensions: ['g.dart', 'freezed.dart'],
            format: 'svg',
            names: []
        },
        { icon: 'dartlang_ignore', extensions: [], format: 'svg', names: ['.pubignore'] },
        {
            icon: 'datadog',
            extensions: [],
            format: 'svg',
            names: [
                'service.datadog.yaml',
                'datadog-ci.json',
                'static-analysis.datadog.yml',
                'static-analysis.datadog.yaml'
            ]
        },
        { icon: 'db', extensions: ['db'], light: true, format: 'svg', names: [] },
        { icon: 'debian', extensions: ['deb'], format: 'svg', names: [] },
        {
            icon: 'deno',
            extensions: [],
            filenamesGlob: ['deno'],
            extensionsGlob: ['json', 'jsonc', 'lock'],
            light: true,
            format: 'svg',
            names: ['deno.json', 'deno.jsonc', 'deno.lock']
        },
        {
            icon: 'denoify',
            extensions: [],
            filenamesGlob: ['denoify.config'],
            extensionsGlob: ['json', 'js'],
            format: 'svg',
            names: ['.denoifyrc', 'denoify.config.json', 'denoify.config.js']
        },
        {
            icon: 'dependabot',
            extensions: [],
            format: 'svg',
            names: ['dependabot.yml', 'dependabot.yaml']
        },
        { icon: 'dependencies', extensions: [], format: 'svg', names: ['dependencies.yml'] },
        {
            icon: 'devcontainer',
            extensions: [],
            format: 'svg',
            names: ['devcontainer.json', '.devcontainer.json']
        },
        { icon: 'django', extensions: ['djt'], format: 'svg', names: [] },
        {
            icon: 'docker',
            extensions: [],
            filenamesGlob: [
                'compose',
                'docker-compose',
                'docker-compose.debug',
                'docker-compose.ci-build',
                'docker-compose.override',
                'docker-compose.vs.debug',
                'docker-compose.vs.release',
                'docker-cloud'
            ],
            extensionsGlob: ['yaml', 'yml'],
            format: 'svg',
            names: [
                '.dockerignore',
                'compose.yaml',
                'compose.yml',
                'docker-compose.yaml',
                'docker-compose.yml',
                'docker-compose.debug.yaml',
                'docker-compose.debug.yml',
                'docker-compose.ci-build.yaml',
                'docker-compose.ci-build.yml',
                'docker-compose.override.yaml',
                'docker-compose.override.yml',
                'docker-compose.vs.debug.yaml',
                'docker-compose.vs.debug.yml',
                'docker-compose.vs.release.yaml',
                'docker-compose.vs.release.yml',
                'docker-cloud.yaml',
                'docker-cloud.yml'
            ]
        },
        {
            icon: 'dockertest',
            extensions: [],
            format: 'svg',
            names: ['docker-compose.test.yml']
        },
        { icon: 'docpad', extensions: ['eco'], light: true, format: 'svg', names: [] },
        {
            icon: 'docz',
            extensions: [],
            filenamesGlob: ['docz', '.docz', 'doczrc', 'docz.config'],
            extensionsGlob: ['js', 'json'],
            format: 'svg',
            names: [
                '.doczrc',
                'docz.js',
                'docz.json',
                '.docz.js',
                '.docz.json',
                'doczrc.js',
                'doczrc.json',
                'docz.config.js',
                'docz.config.json'
            ]
        },
        { icon: 'dojo', extensions: [], format: 'svg', names: ['.dojorc'] },
        {
            icon: 'drawio',
            extensions: ['drawio', 'dio'],
            filenamesGlob: ['.drawio', '.dio'],
            extensionsGlob: ['png', 'svg'],
            format: 'svg',
            names: []
        },
        {
            icon: 'drone',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.drone.yml', '.drone.yml.sig']
        },
        { icon: 'dtd', extensions: ['dtd'], format: 'svg', names: [] },
        { icon: 'dvc', extensions: [], format: 'svg', names: ['.dvc'] },
        { icon: 'editorconfig', extensions: [], format: 'svg', names: ['.editorconfig'] },
        {
            icon: 'earthly',
            extensions: [],
            format: 'svg',
            names: ['.earthlyignore', 'Earthfile']
        },
        {
            icon: 'eas-metadata',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['store.config.json']
        },
        {
            icon: 'eex',
            extensions: ['eex', 'heex', 'phoenix-heex', 'html-heex'],
            format: 'svg',
            names: []
        },
        { icon: 'ejs', extensions: ['ejs'], format: 'svg', names: [] },
        {
            icon: 'eleventy',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.eleventy.js', 'eleventy.config.js', 'eleventy.config.cjs']
        },
        { icon: 'elm', extensions: [], format: 'svg', names: ['elm-package.json'] },
        { icon: 'emacs', extensions: ['el', 'elc'], format: 'svg', names: [] },
        { icon: 'ember', extensions: [], format: 'svg', names: ['.ember-cli'] },
        { icon: 'ensime', extensions: ['ensime'], format: 'svg', names: [] },
        { icon: 'eps', extensions: ['eps'], format: 'svg', names: [] },
        { icon: 'erlang', extensions: [], format: 'svg', names: ['emakefile', '.emakerfile'] },
        {
            icon: 'esbuild',
            extensions: [],
            filenamesGlob: ['esbuild', 'esbuild.config'],
            extensionsGlob: ['js', 'mjs', 'cjs', 'ts'],
            format: 'svg',
            names: [
                'esbuild.js',
                'esbuild.mjs',
                'esbuild.cjs',
                'esbuild.ts',
                'esbuild.config.js',
                'esbuild.config.mjs',
                'esbuild.config.cjs',
                'esbuild.config.ts'
            ]
        },
        {
            icon: 'eslint',
            extensions: [],
            filenamesGlob: ['.eslintrc'],
            extensionsGlob: ['js', 'mjs', 'cjs', 'json', 'yaml', 'yml'],
            format: 'svg',
            names: [
                '.eslintrc',
                '.eslintignore',
                '.eslintcache',
                'eslint.config.js',
                'eslint.config.mjs',
                'eslint.config.cjs',
                '.eslintrc.js',
                '.eslintrc.mjs',
                '.eslintrc.cjs',
                '.eslintrc.json',
                '.eslintrc.yaml',
                '.eslintrc.yml'
            ]
        },
        {
            icon: 'excalidraw',
            extensions: ['excalidraw', 'excalidraw.json', 'excalidraw.svg', 'excalidraw.png'],
            format: 'svg',
            names: []
        },
        {
            icon: 'excel',
            extensions: ['xls', 'xlsx', 'xlsm', 'ods', 'fods', 'xlsb'],
            format: 'svg',
            names: []
        },
        {
            icon: 'expo',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['app.json', 'app.config.js', 'app.config.json', 'app.config.json5']
        },
        {
            icon: 'fantasticon',
            extensions: [],
            format: 'svg',
            names: [
                '.fantasticonrc',
                'fantasticonrc',
                '.fantasticonrc.json',
                'fantasticonrc.json',
                '.fantasticonrc.js',
                'fantasticonrc.js'
            ]
        },
        { icon: 'fauna', extensions: [], format: 'svg', names: ['.faunarc'] },
        { icon: 'favicon', extensions: [], format: 'svg', names: ['favicon.ico'] },
        { icon: 'fbx', extensions: ['fbx'], format: 'svg', names: [] },
        { icon: 'firebase', extensions: [], format: 'svg', names: ['.firebaserc'] },
        {
            icon: 'firebasehosting',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['firebase.json']
        },
        {
            icon: 'firestore',
            extensions: [],
            format: 'svg',
            names: ['firestore.rules', 'firestore.indexes.json']
        },
        { icon: 'fla', extensions: ['fla'], light: true, format: 'svg', names: [] },
        {
            icon: 'flareact',
            extensions: [],
            filenamesGlob: ['flareact.config'],
            extensionsGlob: ['js'],
            format: 'svg',
            names: ['flareact.config.js']
        },
        { icon: 'flash', extensions: ['swf', 'swc'], format: 'svg', names: [] },
        { icon: 'floobits', extensions: [], format: 'svg', names: ['.flooignore'] },
        { icon: 'flow', extensions: ['js.flow'], format: 'svg', names: [] },
        { icon: 'flow', extensions: [], format: 'svg', names: ['.flowconfig'] },
        {
            icon: 'flutter',
            extensions: [],
            format: 'svg',
            names: ['.flutter-plugins', '.metadata']
        },
        {
            icon: 'flutter_package',
            extensions: [],
            format: 'svg',
            names: ['pubspec.lock', 'pubspec.yaml', '.packages']
        },
        {
            icon: 'font',
            extensions: ['woff', 'woff2', 'ttf', 'otf', 'eot', 'pfa', 'pfb', 'sfd'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'formkit',
            extensions: [],
            filenamesGlob: ['formkit.config'],
            extensionsGlob: ['js', 'mjs', 'cjs', 'ts'],
            format: 'svg',
            names: [
                'formkit.config.js',
                'formkit.config.mjs',
                'formkit.config.cjs',
                'formkit.config.ts'
            ]
        },
        { icon: 'fossa', extensions: [], format: 'svg', names: ['.fossaignore'] },
        { icon: 'fossil', extensions: [], format: 'svg', names: ['ignore-glob'] },
        { icon: 'fsproj', extensions: ['fsproj'], format: 'svg', names: [] },
        {
            icon: 'frontcommerce',
            extensions: [],
            format: 'svg',
            names: ['.front-commerce.js', 'front-commerce.config.ts']
        },
        { icon: 'funding', extensions: [], format: 'svg', names: ['funding.yml'] },
        { icon: 'fusebox', extensions: [], format: 'svg', names: ['fuse.js'] },
        {
            icon: 'git',
            extensions: [],
            format: 'svg',
            names: [
                '.gitattributes',
                '.gitconfig',
                '.gitignore',
                '.gitmodules',
                '.gitkeep',
                '.git-blame-ignore-revs',
                '.mailmap',
                '.issuetracker'
            ]
        },
        { icon: 'gamemaker', extensions: ['gmx'], format: 'svg', names: [] },
        {
            icon: 'gamemaker2',
            extensions: ['yy', 'yyp'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'gatsby',
            extensions: [],
            filenamesGlob: ['gatsby-browser', 'gatsby-ssr'],
            extensionsGlob: ['js', 'ts', 'tsx'],
            format: 'svg',
            names: [
                'gatsby-browser.js',
                'gatsby-browser.ts',
                'gatsby-browser.tsx',
                'gatsby-ssr.js',
                'gatsby-ssr.ts',
                'gatsby-ssr.tsx'
            ]
        },
        {
            icon: 'gatsby',
            extensions: [],
            filenamesGlob: ['gatsby-config', 'gatsby-node'],
            extensionsGlob: ['js', 'ts', 'mjs'],
            format: 'svg',
            names: [
                'gatsby-config.js',
                'gatsby-config.ts',
                'gatsby-config.mjs',
                'gatsby-node.js',
                'gatsby-node.ts',
                'gatsby-node.mjs'
            ]
        },
        { icon: 'gcloud', extensions: [], format: 'svg', names: ['.gcloudignore'] },
        { icon: 'gitlab', extensions: [], format: 'svg', names: ['.gitlab-ci.yml'] },
        {
            icon: 'gitpod',
            extensions: [],
            filenamesGlob: ['.gitpod', 'gitpod'],
            extensionsGlob: ['yaml', 'yml'],
            format: 'svg',
            names: ['.gitpod.yaml', '.gitpod.yml', 'gitpod.yaml', 'gitpod.yml']
        },
        { icon: 'gleam', extensions: ['gleam'], format: 'svg', names: [] },
        { icon: 'gleamconfig', extensions: [], format: 'svg', names: ['gleam.toml'] },
        { icon: 'glide', extensions: [], format: 'svg', names: ['glide.yml'] },
        { icon: 'glitter', extensions: [], format: 'svg', names: ['.glitterrc'] },
        { icon: 'gnu', extensions: ['am', 'ld', 'm4', 'makefile'], format: 'svg', names: [] },
        { icon: 'go_package', extensions: [], format: 'svg', names: ['go.sum', 'go.mod'] },
        { icon: 'go_work', extensions: [], format: 'svg', names: ['go.work', 'go.work.sum'] },
        { icon: 'godot', extensions: ['godot'], format: 'svg', names: [] },
        { icon: 'gpg', extensions: ['gpg', 'pgp'], format: 'svg', names: [] },
        { icon: 'gradle', extensions: ['gradle'], format: 'svg', light: true, names: [] },
        { icon: 'grain', extensions: ['gr'], format: 'svg', names: [] },
        { icon: 'graphql', extensions: [], format: 'svg', names: ['.gqlconfig'] },
        {
            icon: 'graphql_config',
            extensions: [],
            filenamesGlob: ['.graphqlconfig'],
            extensionsGlob: ['yml', 'yaml'],
            format: 'svg',
            names: ['.graphqlconfig', '.graphqlconfig.yml', '.graphqlconfig.yaml']
        },
        { icon: 'greenkeeper', extensions: [], format: 'svg', names: ['greenkeeper.json'] },
        {
            icon: 'gridsome',
            extensions: [],
            filenamesGlob: ['gridsome.config', 'gridsome.server', 'gridsome.client'],
            extensionsGlob: ['js', 'ts'],
            format: 'svg',
            names: [
                'gridsome.config.js',
                'gridsome.config.ts',
                'gridsome.server.js',
                'gridsome.server.ts',
                'gridsome.client.js',
                'gridsome.client.ts'
            ]
        },
        {
            icon: 'grunt',
            extensions: [],
            filenamesGlob: ['gruntfile', 'gruntfile.babel'],
            extensionsGlob: ['js', 'cjs', 'coffee', 'ts'],
            format: 'svg',
            names: [
                'gruntfile.js',
                'gruntfile.cjs',
                'gruntfile.coffee',
                'gruntfile.ts',
                'gruntfile.babel.js',
                'gruntfile.babel.cjs',
                'gruntfile.babel.coffee',
                'gruntfile.babel.ts'
            ]
        },
        {
            icon: 'gulp',
            extensions: [],
            filenamesGlob: ['gulpfile', 'gulpfile.esm', 'gulpfile.babel'],
            extensionsGlob: ['js', 'coffee', 'ts', 'mjs'],
            format: 'svg',
            names: [
                'gulpfile.js',
                'gulpfile.coffee',
                'gulpfile.ts',
                'gulpfile.mjs',
                'gulpfile.esm.js',
                'gulpfile.esm.coffee',
                'gulpfile.esm.ts',
                'gulpfile.esm.mjs',
                'gulpfile.babel.js',
                'gulpfile.babel.coffee',
                'gulpfile.babel.ts',
                'gulpfile.babel.mjs'
            ]
        },
        {
            icon: 'hashicorp',
            extensions: ['hcl2', 'sentinel'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'hardhat',
            extensions: [],
            filenamesGlob: ['hardhat.config'],
            extensionsGlob: ['js', 'ts'],
            format: 'svg',
            names: ['hardhat.config.js', 'hardhat.config.ts']
        },
        { icon: 'haxe', extensions: [], format: 'svg', names: ['haxelib.json'] },
        { icon: 'haxecheckstyle', extensions: [], format: 'svg', names: ['checkstyle.json'] },
        { icon: 'haxedevelop', extensions: ['hxproj'], format: 'svg', names: [] },
        { icon: 'helix', extensions: [], format: 'svg', names: ['.p4ignore'] },
        { icon: 'helm', extensions: [], format: 'svg', names: ['chart.lock', 'chart.yaml'] },
        { icon: 'horusec', extensions: [], format: 'svg', names: ['horusec-config.json'] },
        { icon: 'htmlhint', extensions: [], format: 'svg', names: ['.htmlhintrc'] },
        {
            icon: 'htmlvalidate',
            filenamesGlob: ['.htmlvalidate'],
            extensions: [],
            extensionsGlob: ['js', 'cjs', 'json'],
            format: 'svg',
            names: [
                '.htmlvalidateignore',
                '.htmlvalidate.js',
                '.htmlvalidate.cjs',
                '.htmlvalidate.json'
            ]
        },
        {
            icon: 'husky',
            extensions: [],
            filenamesGlob: ['.huskyrc'],
            extensionsGlob: ['js', 'json', 'yaml', 'yml'],
            format: 'svg',
            names: [
                '.huskyrc',
                'husky.config.js',
                '.huskyrc.js',
                '.huskyrc.json',
                '.huskyrc.yaml',
                '.huskyrc.yml'
            ]
        },
        { icon: 'hygen', extensions: ['ejs.t'], format: 'svg', names: [] },
        { icon: 'idris', extensions: ['idr', 'lidr'], format: 'svg', names: [] },
        { icon: 'idrisbin', extensions: ['ibc'], format: 'svg', names: [] },
        { icon: 'idrispkg', extensions: ['ipkg'], format: 'svg', names: [] },
        {
            icon: 'image',
            extensions: ['jpeg', 'jpg', 'gif', 'png', 'bmp', 'tiff', 'heic', 'ico', 'icns', 'webp'],
            format: 'svg',
            names: []
        },
        { icon: 'imba', extensions: ['imba', 'imba2'], format: 'svg', names: [] },
        { icon: 'inc', extensions: ['inc', 'include'], format: 'svg', names: [] },
        {
            icon: 'infopath',
            extensions: ['infopathxml', 'xsn', 'xsf', 'xtp2'],
            format: 'svg',
            names: []
        },
        {
            icon: 'ionic',
            extensions: [],
            format: 'svg',
            names: ['ionic.project', 'ionic.config.json']
        },
        { icon: 'jake', extensions: [], format: 'svg', names: ['jakefile', 'jakefile.js'] },
        { icon: 'jar', extensions: ['jar'], format: 'svg', names: [] },
        { icon: 'jasmine', extensions: [], format: 'svg', names: ['jasmine.json'] },
        { icon: 'jbuilder', extensions: ['jbuilder'], format: 'svg', names: [] },
        {
            icon: 'jest',
            extensions: [],
            filenamesGlob: [
                'jest.config',
                'jest.config.base',
                'jest.config.common',
                'jest.config.e2e',
                'jest.config.int',
                'jest.config.integration',
                'jest.config.unit'
            ],
            extensionsGlob: ['js', 'cjs', 'mjs', 'json', 'ts'],
            format: 'svg',
            names: [
                'jest.json',
                'jest.config.babel.js',
                '.jestrc',
                '.jestrc.js',
                '.jestrc.json',
                'jest.config.js',
                'jest.config.cjs',
                'jest.config.mjs',
                'jest.config.json',
                'jest.config.ts',
                'jest.config.base.js',
                'jest.config.base.cjs',
                'jest.config.base.mjs',
                'jest.config.base.json',
                'jest.config.base.ts',
                'jest.config.common.js',
                'jest.config.common.cjs',
                'jest.config.common.mjs',
                'jest.config.common.json',
                'jest.config.common.ts',
                'jest.config.e2e.js',
                'jest.config.e2e.cjs',
                'jest.config.e2e.mjs',
                'jest.config.e2e.json',
                'jest.config.e2e.ts',
                'jest.config.int.js',
                'jest.config.int.cjs',
                'jest.config.int.mjs',
                'jest.config.int.json',
                'jest.config.int.ts',
                'jest.config.integration.js',
                'jest.config.integration.cjs',
                'jest.config.integration.mjs',
                'jest.config.integration.json',
                'jest.config.integration.ts',
                'jest.config.unit.js',
                'jest.config.unit.cjs',
                'jest.config.unit.mjs',
                'jest.config.unit.json',
                'jest.config.unit.ts'
            ]
        },
        { icon: 'jpm', extensions: [], format: 'svg', names: ['.jpmignore'] },
        {
            icon: 'jsbeautify',
            extensions: [],
            format: 'svg',
            names: ['.jsbeautifyrc', 'jsbeautifyrc', '.jsbeautify', 'jsbeautify']
        },
        {
            icon: 'jsconfig',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['jsconfig.json']
        },
        {
            icon: 'jscpd',
            extensions: [],
            filenamesGlob: ['jscpd-report'],
            extensionsGlob: ['xml', 'json', 'html'],
            format: 'svg',
            names: ['.jscpd.json', 'jscpd-report.xml', 'jscpd-report.json', 'jscpd-report.html']
        },
        {
            icon: 'jshint',
            extensions: [],
            format: 'svg',
            names: ['.jshintrc', '.jshintignore']
        },
        {
            icon: 'jsmap',
            extensions: ['js.map', 'cjs.map', 'mjs.map'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'json',
            extensions: ['jsonl', 'ndjson'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'json_schema',
            extensions: ['schema.json'],
            light: true,
            format: 'svg',
            names: []
        },
        { icon: 'json5', extensions: ['json5'], light: true, format: 'svg', names: [] },
        {
            icon: 'jsonld',
            extensions: ['jsonld', 'json-ld'],
            light: true,
            format: 'svg',
            names: []
        },
        { icon: 'jsp', extensions: ['jsp'], format: 'svg', names: [] },
        { icon: 'jss', extensions: ['jss'], format: 'svg', names: [] },
        { icon: 'juice', extensions: ['juice'], format: 'svg', names: [] },
        { icon: 'jupyter', extensions: ['ipynb'], format: 'svg', names: [] },
        {
            icon: 'karma',
            extensions: [],
            filenamesGlob: ['karma.conf'],
            extensionsGlob: ['js', 'coffee', 'ts'],
            format: 'svg',
            names: ['karma.conf.js', 'karma.conf.coffee', 'karma.conf.ts']
        },
        { icon: 'key', extensions: ['key', 'pem'], format: 'svg', names: [] },
        { icon: 'kite', extensions: [], light: true, format: 'svg', names: ['.kiteignore'] },
        {
            icon: 'kitchenci',
            extensions: [],
            format: 'svg',
            names: ['.kitchen.yml', 'kitchen.yml']
        },
        { icon: 'kotlin', extensions: ['ktm'], format: 'svg', names: [] },
        {
            icon: 'layout',
            extensions: ['master', 'layout.html', 'layout.htm'],
            format: 'svg',
            names: []
        },
        { icon: 'layout', extensions: [], format: 'svg', names: ['layout.html', 'layout.htm'] },
        { icon: 'lerna', extensions: [], light: true, format: 'svg', names: ['lerna.json'] },
        { icon: 'libreoffice_base', extensions: ['odb', 'otb'], format: 'svg', names: [] },
        {
            icon: 'libreoffice_calc',
            extensions: ['fods', 'ods', 'ots'],
            format: 'svg',
            names: []
        },
        { icon: 'libreoffice_draw', extensions: ['odg', 'otg'], format: 'svg', names: [] },
        { icon: 'libreoffice_impress', extensions: ['odp', 'otp'], format: 'svg', names: [] },
        { icon: 'libreoffice_math', extensions: ['odf', 'otf'], format: 'svg', names: [] },
        { icon: 'libreoffice_writer', extensions: ['odt', 'ott'], format: 'svg', names: [] },
        { icon: 'license', extensions: ['enc', 'license', 'lic'], format: 'svg', names: [] },
        {
            icon: 'license',
            extensions: [],
            filenamesGlob: [
                'license',
                'licence',
                'copying',
                'copying.lesser',
                'license-mit',
                'license-apache'
            ],
            extensionsGlob: ['md', 'txt'],
            format: 'svg',
            names: [
                'license',
                'licence',
                'copying',
                'copying.lesser',
                'license-mit',
                'license-apache',
                'license.md',
                'license.txt',
                'licence.md',
                'licence.txt',
                'copying.md',
                'copying.txt',
                'copying.lesser.md',
                'copying.lesser.txt',
                'license-mit.md',
                'license-mit.txt',
                'license-apache.md',
                'license-apache.txt'
            ]
        },
        { icon: 'licensebat', extensions: [], format: 'svg', names: ['.licrc'] },
        {
            icon: 'lighthouse',
            extensions: [],
            filenamesGlob: ['.lighthouserc'],
            extensionsGlob: ['cjs', 'js', 'json', 'yaml', 'yml'],
            format: 'svg',
            names: [
                'budget.json',
                'budgets.json',
                '.lighthouserc.cjs',
                '.lighthouserc.js',
                '.lighthouserc.json',
                '.lighthouserc.yaml',
                '.lighthouserc.yml'
            ]
        },
        { icon: 'lime', extensions: ['hxp'], format: 'svg', names: [] },
        { icon: 'lime', extensions: [], format: 'svg', names: ['include.xml'] },
        {
            icon: 'lintstagedrc',
            extensions: [],
            format: 'svg',
            names: [
                '.lintstagedrc',
                '.lintstagedrc.json',
                '.lintstagedrc.yaml',
                '.lintstagedrc.yml',
                '.lintstagedrc.mjs',
                '.lintstagedrc.js',
                '.lintstagedrc.cjs',
                'lint-staged.config.mjs',
                'lint-staged.config.js',
                'lint-staged.config.cjs'
            ]
        },
        { icon: 'liquid', extensions: ['liquid'], format: 'svg', names: [] },
        { icon: 'livescript', extensions: ['ls'], format: 'svg', names: [] },
        { icon: 'lnk', extensions: ['lnk'], format: 'svg', names: [] },
        { icon: 'log', extensions: ['log', 'tlg'], format: 'svg', names: [] },
        { icon: 'log', extensions: ['log', 'tlg'], format: 'svg', names: [] },
        { icon: 'luau', extensions: ['luau'], format: 'svg', names: [] },
        { icon: 'lync', extensions: ['crec', 'ocrec'], format: 'svg', names: [] },
        {
            icon: 'mailing',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['mailing.config.json']
        },
        { icon: 'manifest', extensions: [], format: 'svg', names: ['manifest'] },
        { icon: 'manifest_skip', extensions: [], format: 'svg', names: ['manifest.skip'] },
        { icon: 'manifest_bak', extensions: [], format: 'svg', names: ['manifest.bak'] },
        { icon: 'map', extensions: ['map'], format: 'svg', names: [] },
        { icon: 'markdown', extensions: ['mdown', 'markdown', 'md'], format: 'svg', names: [] },
        {
            icon: 'markdownlint',
            extensions: [],
            filenamesGlob: ['.markdownlint', '.markdownlint-cli2'],
            extensionsGlob: ['json', 'jsonc', 'yml', 'yaml', 'cjs'],
            format: 'svg',
            names: [
                '.markdownlintrc',
                '.markdownlint.json',
                '.markdownlint.jsonc',
                '.markdownlint.yml',
                '.markdownlint.yaml',
                '.markdownlint.cjs',
                '.markdownlint-cli2.json',
                '.markdownlint-cli2.jsonc',
                '.markdownlint-cli2.yml',
                '.markdownlint-cli2.yaml',
                '.markdownlint-cli2.cjs'
            ]
        },
        {
            icon: 'markdownlint_ignore',
            extensions: [],
            format: 'svg',
            names: ['.markdownlintignore']
        },
        { icon: 'markojs', extensions: ['marko.js'], format: 'svg', names: [] },
        {
            icon: 'master-co',
            extensions: [],
            filenamesGlob: ['master', 'master.css'],
            extensionsGlob: ['js', 'ts', 'mjs', 'json'],
            format: 'svg',
            names: [
                'master.js',
                'master.ts',
                'master.mjs',
                'master.json',
                'master.css.js',
                'master.css.ts',
                'master.css.mjs',
                'master.css.json'
            ]
        },
        {
            icon: 'matlab',
            extensions: [
                'fig',
                'mex',
                'mexn',
                'mexrs6',
                'mn',
                'mum',
                'mx',
                'mx3',
                'rwd',
                'slx',
                'slddc',
                'smv',
                'xvc'
            ],
            format: 'svg',
            names: []
        },
        {
            icon: 'maven',
            extensions: [],
            filenamesGlob: ['pom', 'extensions', 'settings'],
            extensionsGlob: ['xml'],
            format: 'svg',
            names: ['maven.config', 'pom.xml', 'extensions.xml', 'settings.xml']
        },
        {
            icon: 'mdx-components',
            extensions: [],
            filenamesGlob: ['mdx-components'],
            extensionsGlob: ['cjs', 'cts', 'js', 'jsx', 'mjs', 'mts', 'ts', 'tsx'],
            light: true,
            format: 'svg',
            names: [
                'mdx-components.cjs',
                'mdx-components.cts',
                'mdx-components.js',
                'mdx-components.jsx',
                'mdx-components.mjs',
                'mdx-components.mts',
                'mdx-components.ts',
                'mdx-components.tsx'
            ]
        },
        { icon: 'mercurial', extensions: [], format: 'svg', names: ['.hgignore'] },
        {
            icon: 'mocha',
            extensions: [],
            filenamesGlob: ['.mocharc'],
            extensionsGlob: ['cjs', 'js', 'json', 'jsonc', 'mjs', 'yaml', 'yml'],
            format: 'svg',
            names: [
                'mocha.opts',
                '.mocharc.cjs',
                '.mocharc.js',
                '.mocharc.json',
                '.mocharc.jsonc',
                '.mocharc.mjs',
                '.mocharc.yaml',
                '.mocharc.yml'
            ]
        },
        {
            icon: 'modernizr',
            extensions: [],
            filenamesGlob: ['modernizr', 'modernizrrc', '.modernizr', '.modernizrrc'],
            extensionsGlob: ['js'],
            format: 'svg',
            names: [
                'modernizr',
                'modernizr.js',
                'modernizrrc.js',
                '.modernizr.js',
                '.modernizrrc.js'
            ]
        },
        { icon: 'mojo', extensions: ['mojo', '🔥'], format: 'svg', names: [] },
        {
            icon: 'moleculer',
            extensions: [],
            filenamesGlob: ['moleculer.config'],
            extensionsGlob: ['js', 'json', 'ts'],
            format: 'svg',
            names: ['moleculer.config.js', 'moleculer.config.json', 'moleculer.config.ts']
        },
        { icon: 'mondoo', extensions: ['mql.yaml', 'mql.yml'], format: 'svg', names: [] },
        { icon: 'monotone', extensions: [], format: 'svg', names: ['.mtn-ignore'] },
        { icon: 'motif', extensions: [], format: 'svg', names: ['motif.json'] },
        {
            icon: 'mustache',
            extensions: ['mustache', 'mst'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'ndst',
            extensions: ['ndst.yaml', 'ndst.yml', 'ndst.json'],
            format: 'svg',
            names: []
        },
        {
            icon: 'nestjs',
            extensions: [],
            format: 'svg',
            names: ['.nest-cli.json', 'nest-cli.json', 'nestconfig.json', '.nestconfig.json']
        },
        {
            icon: 'netlify',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['netlify.toml']
        },
        {
            icon: 'next',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['next.config.js', 'next.config.cjs', 'next.config.mjs', 'next.config.ts']
        },
        { icon: 'nextflow', extensions: [], format: 'svg', names: ['.nf'] },
        { icon: 'nginx', extensions: [], format: 'svg', names: ['nginx.conf'] },
        { icon: 'ninja', extensions: [], format: 'svg', names: ['build.ninja'] },
        { icon: 'noc', extensions: ['noc'], format: 'svg', names: [] },
        { icon: 'nix', extensions: [], format: 'svg', names: ['flake.lock'] },
        { icon: 'njsproj', extensions: ['njsproj'], format: 'svg', names: [] },
        { icon: 'node', extensions: [], format: 'svg', names: ['.node-version', '.nvmrc'] },
        { icon: 'nodemon', extensions: [], format: 'svg', names: ['nodemon.json'] },
        {
            icon: 'npm',
            extensions: [],
            format: 'svg',
            names: [
                '.npmignore',
                '.npmrc',
                '.package-lock.json',
                'package.json',
                'package-lock.json',
                'npm-shrinkwrap.json'
            ]
        },
        {
            icon: 'nsri',
            extensions: [],
            filenamesGlob: ['.nsrirc'],
            extensionsGlob: ['js', 'json', 'yaml', 'yml'],
            format: 'svg',
            names: [
                '.nsrirc',
                '.nsriignore',
                'nsri.config.js',
                '.nsrirc.js',
                '.nsrirc.json',
                '.nsrirc.yaml',
                '.nsrirc.yml'
            ]
        },
        { icon: 'nsri-integrity', extensions: [], format: 'svg', names: ['.integrity.json'] },
        {
            icon: 'nuget',
            extensions: ['nupkg', 'snupkg', 'nuspec', 'psmdcp'],
            format: 'svg',
            names: []
        },
        { icon: 'numpy', extensions: ['npy', 'npz'], format: 'svg', names: [] },
        { icon: 'nunjucks', extensions: ['nunj', 'njs'], format: 'svg', names: [] },
        {
            icon: 'nuxt',
            extensions: [],
            filenamesGlob: ['nuxt.config', 'nuxt'],
            extensionsGlob: ['js', 'ts', 'mjs'],
            format: 'svg',
            names: [
                '.nuxtignore',
                '.nuxtrc',
                'nuxt.config.js',
                'nuxt.config.ts',
                'nuxt.config.mjs',
                'nuxt.js',
                'nuxt.ts',
                'nuxt.mjs'
            ]
        },
        {
            icon: 'nx',
            extensions: [],
            filenamesGlob: ['nx'],
            extensionsGlob: ['json'],
            light: true,
            format: 'svg',
            names: ['nx.json']
        },
        { icon: 'nyc', extensions: [], format: 'svg', names: ['.nycrc', '.nycrc.json'] },
        {
            icon: 'objidconfig',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.objidconfig']
        },
        { icon: 'ocaml', extensions: [], format: 'svg', names: ['.merlin'] },
        { icon: 'ocaml_intf', extensions: ['mli'], format: 'svg', names: [] },
        {
            icon: 'onenote',
            extensions: ['one', 'onepkg', 'onetoc', 'onetoc2', 'sig'],
            format: 'svg',
            names: []
        },
        { icon: 'opencl', extensions: ['cl', 'opencl'], format: 'svg', names: [] },
        { icon: 'org', extensions: ['org'], format: 'svg', names: [] },
        {
            icon: 'outlook',
            extensions: ['pst', 'bcmx', 'otm', 'msg', 'oft'],
            format: 'svg',
            names: []
        },
        { icon: 'ovpn', extensions: ['ovpn'], format: 'svg', names: [] },
        { icon: 'package', extensions: ['pkg'], format: 'svg', names: [] },
        {
            icon: 'paket',
            extensions: [],
            filenamesGlob: ['paket'],
            extensionsGlob: ['dependencies', 'lock', 'references', 'template', 'local'],
            format: 'svg',
            names: [
                'paket.dependencies',
                'paket.lock',
                'paket.references',
                'paket.template',
                'paket.local'
            ]
        },
        {
            icon: 'pandacss',
            filenamesGlob: ['panda.config'],
            extensions: [],
            extensionsGlob: ['js', 'mjs', 'ts'],
            format: 'svg',
            names: ['panda.config.js', 'panda.config.mjs', 'panda.config.ts']
        },
        { icon: 'patch', extensions: ['patch'], format: 'svg', names: [] },
        { icon: 'pcl', extensions: ['pcd'], light: true, format: 'svg', names: [] },
        { icon: 'pdf', extensions: ['pdf'], format: 'svg', names: [] },
        {
            icon: 'pdm',
            extensions: [],
            filenamesGlob: ['pdm'],
            extensionsGlob: ['lock', 'toml'],
            format: 'svg',
            names: ['.pdm-python', 'pdm.lock', 'pdm.toml']
        },
        {
            icon: 'peeky',
            extensions: [],
            format: 'svg',
            names: ['peeky.config.ts', 'peeky.config.js', 'peeky.config.mjs']
        },
        { icon: 'photoshop', extensions: ['psd'], format: 'svg', names: [] },
        {
            icon: 'php',
            extensions: [
                'php1',
                'php2',
                'php3',
                'php4',
                'php5',
                'php6',
                'phps',
                'phpsa',
                'phpt',
                'phtml',
                'phar'
            ],
            format: 'svg',
            names: []
        },
        {
            icon: 'phpcsfixer',
            extensions: [],
            format: 'svg',
            names: ['.php_cs', '.php_cs.dist']
        },
        {
            icon: 'phpstan',
            extensions: [],
            filenamesGlob: ['phpstan', 'phpstan.dist'],
            extensionsGlob: ['neon'],
            format: 'svg',
            names: ['phpstan.neon', 'phpstan.dist.neon']
        },
        {
            icon: 'phpunit',
            extensions: [],
            format: 'svg',
            names: ['phpunit', 'phpunit.xml', 'phpunit.xml.dist']
        },
        { icon: 'phraseapp', extensions: [], format: 'svg', names: ['.phraseapp.yml'] },
        { icon: 'pip', extensions: [], format: 'svg', names: ['pipfile', 'pipfile.lock'] },
        { icon: 'pipeline', extensions: ['pipeline'], format: 'svg', names: [] },
        { icon: 'platformio', extensions: [], format: 'svg', names: ['platformio.ini'] },
        {
            icon: 'plantuml',
            extensions: ['pu', 'plantuml', 'iuml', 'puml'],
            format: 'svg',
            names: []
        },
        {
            icon: 'playwright',
            extensions: [],
            filenamesGlob: ['playwright.config'],
            extensionsGlob: ['js', 'ts', 'mts', 'mjs', 'cts', 'cjs'],
            format: 'svg',
            names: [
                'playwright.config.js',
                'playwright.config.ts',
                'playwright.config.mts',
                'playwright.config.mjs',
                'playwright.config.cts',
                'playwright.config.cjs'
            ]
        },
        { icon: 'plsql_package', extensions: ['pck'], format: 'svg', names: [] },
        { icon: 'plsql_package_body', extensions: ['pkb'], format: 'svg', names: [] },
        { icon: 'plsql_package_header', extensions: ['pkh'], format: 'svg', names: [] },
        { icon: 'plsql_package_spec', extensions: ['pks'], format: 'svg', names: [] },
        {
            icon: 'pm2',
            extensions: [],
            filenamesGlob: ['ecosystem.config'],
            extensionsGlob: ['js', 'cjs', 'json', 'yaml', 'yml'],
            format: 'svg',
            names: [
                'ecosystem.config.js',
                'ecosystem.config.cjs',
                'ecosystem.config.json',
                'ecosystem.config.yaml',
                'ecosystem.config.yml'
            ]
        },
        {
            icon: 'pnpm',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['pnpmfile.js', 'pnpm-lock.yaml', 'pnpm-workspace.yaml']
        },
        { icon: 'poedit', extensions: ['po', 'mo'], format: 'svg', names: [] },
        {
            icon: 'poetry',
            extensions: [],
            filenamesGlob: ['poetry'],
            extensionsGlob: ['lock'],
            format: 'svg',
            names: ['poetry.lock']
        },
        {
            icon: 'postcssconfig',
            extensions: [],
            format: 'svg',
            names: [
                '.postcssrc',
                '.postcssrc.json',
                '.postcssrc.yaml',
                '.postcssrc.yml',
                '.postcssrc.ts',
                '.postcssrc.js',
                '.postcssrc.cjs',
                'postcss.config.ts',
                'postcss.config.js',
                'postcss.config.cjs'
            ]
        },
        {
            icon: 'postman',
            extensions: [
                'postman_collection.json',
                'postman_environment.json',
                'postman_globals.json'
            ],
            format: 'svg',
            names: []
        },
        {
            icon: 'powerpoint',
            extensions: [
                'pot',
                'potx',
                'potm',
                'pps',
                'ppsx',
                'ppsm',
                'ppt',
                'pptx',
                'pptm',
                'pa',
                'ppa',
                'ppam',
                'sldm',
                'sldx'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'powershell_psm', extensions: ['psm1'], format: 'svg', names: [] },
        { icon: 'powershell_psd', extensions: ['psd1'], format: 'svg', names: [] },
        { icon: 'powershell_format', extensions: ['format.ps1xml'], format: 'svg', names: [] },
        { icon: 'powershell_types', extensions: ['types.ps1xml'], format: 'svg', names: [] },
        {
            icon: 'preact',
            extensions: [],
            filenamesGlob: ['preact.config'],
            extensionsGlob: ['js'],
            format: 'svg',
            names: ['preact.config.js']
        },
        {
            icon: 'precommit',
            extensions: [],
            format: 'svg',
            names: ['.pre-commit-config.yaml']
        },
        {
            icon: 'prettier',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.prettierrc', '.prettierignore']
        },
        {
            icon: 'prettier',
            extensions: [],
            filenamesGlob: ['prettier.config'],
            extensionsGlob: ['js', 'cjs', 'mjs', 'ts', 'coffee'],
            light: true,
            format: 'svg',
            names: [
                'prettier.config.js',
                'prettier.config.cjs',
                'prettier.config.mjs',
                'prettier.config.ts',
                'prettier.config.coffee'
            ]
        },
        {
            icon: 'prettier',
            extensions: [],
            filenamesGlob: ['.prettierrc'],
            extensionsGlob: ['js', 'cjs', 'mjs', 'json', 'json5', 'yml', 'yaml', 'toml'],
            light: true,
            format: 'svg',
            names: [
                '.prettierrc.js',
                '.prettierrc.cjs',
                '.prettierrc.mjs',
                '.prettierrc.json',
                '.prettierrc.json5',
                '.prettierrc.yml',
                '.prettierrc.yaml',
                '.prettierrc.toml'
            ]
        },
        { icon: 'procfile', extensions: [], format: 'svg', names: ['procfile'] },
        { icon: 'prolog', extensions: ['pro'], format: 'svg', names: [] },
        {
            icon: 'protractor',
            extensions: [],
            filenamesGlob: ['protractor.conf'],
            extensionsGlob: ['js', 'coffee', 'ts'],
            format: 'svg',
            names: ['protractor.conf.js', 'protractor.conf.coffee', 'protractor.conf.ts']
        },
        { icon: 'publiccode', extensions: [], format: 'svg', names: ['publiccode.yml'] },
        { icon: 'publisher', extensions: ['pub', 'puz'], format: 'svg', names: [] },
        {
            icon: 'pug',
            extensions: [],
            format: 'svg',
            names: [
                '.jade-lintrc',
                '.pug-lintrc',
                '.jade-lint.json',
                '.pug-lintrc.js',
                '.pug-lintrc.json'
            ]
        },
        {
            icon: 'pulumi',
            extensions: [],
            filenamesGlob: ['Pulumi', 'Pulumi.dev', 'Pulumi.prod'],
            extensionsGlob: ['yaml', 'yml'],
            format: 'svg',
            names: [
                'Pulumi.yaml',
                'Pulumi.yml',
                'Pulumi.dev.yaml',
                'Pulumi.dev.yml',
                'Pulumi.prod.yaml',
                'Pulumi.prod.yml'
            ]
        },
        { icon: 'biome', extensions: [], format: 'svg', names: ['biome.json', 'biome.jsonc'] },
        { icon: 'pyenv', extensions: [], format: 'svg', names: ['.python-version'] },
        { icon: 'pythowo', extensions: ['pyowo'], format: 'svg', names: [] },
        { icon: 'pytyped', extensions: [], format: 'svg', names: ['py.typed'] },
        { icon: 'pyup', extensions: [], format: 'svg', names: ['.pyup', '.pyup.yml'] },
        { icon: 'q', extensions: ['q'], format: 'svg', names: [] },
        { icon: 'qbs', extensions: ['qbs'], format: 'svg', names: [] },
        { icon: 'qlikview', extensions: ['qvd', 'qvw'], format: 'svg', names: [] },
        { icon: 'qmldir', extensions: [], format: 'svg', names: ['qmldir'] },
        {
            icon: 'quasar',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['quasar.config.js', 'quasar.conf.js']
        },
        { icon: 'rake', extensions: ['rake'], format: 'svg', names: [] },
        { icon: 'rake', extensions: [], format: 'svg', names: ['rakefile'] },
        { icon: 'ra_syntax_tree', extensions: ['rast'], format: 'svg', names: [] },
        {
            icon: 'razzle',
            extensions: [],
            filenamesGlob: ['razzle.config'],
            extensionsGlob: ['js'],
            light: true,
            format: 'svg',
            names: ['razzle.config.js']
        },
        { icon: 'reacttemplate', extensions: ['rt'], format: 'svg', names: [] },
        { icon: 'registry', extensions: ['reg'], format: 'svg', names: [] },
        { icon: 'rego', extensions: ['rego'], format: 'svg', names: [] },
        {
            icon: 'rehype',
            extensions: [],
            filenamesGlob: ['.rehyperc'],
            extensionsGlob: ['cjs', 'js', 'json', 'mjs', 'yml', 'yaml'],
            light: true,
            format: 'svg',
            names: [
                '.rehyperc',
                '.rehypeignore',
                '.rehyperc.cjs',
                '.rehyperc.js',
                '.rehyperc.json',
                '.rehyperc.mjs',
                '.rehyperc.yml',
                '.rehyperc.yaml'
            ]
        },
        {
            icon: 'remark',
            extensions: [],
            filenamesGlob: ['.remarkrc'],
            extensionsGlob: ['cjs', 'js', 'json', 'mjs', 'yml', 'yaml'],
            light: true,
            format: 'svg',
            names: [
                '.remarkrc',
                '.remarkignore',
                '.remarkrc.cjs',
                '.remarkrc.js',
                '.remarkrc.json',
                '.remarkrc.mjs',
                '.remarkrc.yml',
                '.remarkrc.yaml'
            ]
        },
        {
            icon: 'renovate',
            extensions: [],
            filenamesGlob: ['renovate'],
            extensionsGlob: ['json', 'json5'],
            format: 'svg',
            names: ['.renovaterc', '.renovaterc.json', 'renovate.json', 'renovate.json5']
        },
        {
            icon: 'replit',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.replit', 'replit.nix']
        },
        {
            icon: 'retext',
            extensions: [],
            filenamesGlob: ['.retextrc'],
            extensionsGlob: ['cjs', 'js', 'json', 'mjs', 'yml', 'yaml'],
            light: true,
            format: 'svg',
            names: [
                '.retextrc',
                '.retextignore',
                '.retextrc.cjs',
                '.retextrc.js',
                '.retextrc.json',
                '.retextrc.mjs',
                '.retextrc.yml',
                '.retextrc.yaml'
            ]
        },
        { icon: 'rnc', extensions: ['rnc'], format: 'svg', names: [] },
        { icon: 'robots', extensions: [], format: 'svg', names: ['robots.txt'] },
        {
            icon: 'rollup',
            extensions: [],
            filenamesGlob: [
                'rollup.config',
                'rollup.config.common',
                'rollup.config.dev',
                'rollup.config.prod'
            ],
            extensionsGlob: ['js', 'cjs', 'mjs', 'coffee', 'ts'],
            format: 'svg',
            names: [
                'rollup.config.js',
                'rollup.config.cjs',
                'rollup.config.mjs',
                'rollup.config.coffee',
                'rollup.config.ts',
                'rollup.config.common.js',
                'rollup.config.common.cjs',
                'rollup.config.common.mjs',
                'rollup.config.common.coffee',
                'rollup.config.common.ts',
                'rollup.config.dev.js',
                'rollup.config.dev.cjs',
                'rollup.config.dev.mjs',
                'rollup.config.dev.coffee',
                'rollup.config.dev.ts',
                'rollup.config.prod.js',
                'rollup.config.prod.cjs',
                'rollup.config.prod.mjs',
                'rollup.config.prod.coffee',
                'rollup.config.prod.ts'
            ]
        },
        { icon: 'ron', extensions: ['ron'], format: 'svg', names: [] },
        { icon: 'rome', light: true, extensions: [], format: 'svg', names: ['rome.json'] },
        { icon: 'rproj', extensions: ['rproj'], format: 'svg', names: [] },
        { icon: 'rspec', extensions: [], format: 'svg', names: ['.rspec'] },
        { icon: 'rss', extensions: ['rss'], format: 'svg', names: [] },
        {
            icon: 'rubocop',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.rubocop.yml', '.rubocop_todo.yml']
        },
        { icon: 'ruby', extensions: ['rbs'], format: 'svg', names: [] },
        { icon: 'ruby', extensions: [], format: 'svg', names: ['.ruby-version'] },
        {
            icon: 'rust_toolchain',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['rust-toolchain', 'rust-toolchain.toml']
        },
        {
            icon: 's-lang',
            extensions: [],
            extensionsGlob: ['sl'],
            format: 'svg',
            names: ['.slshrc', '.isisrc', '.jedrc']
        },
        {
            icon: 'safetensors',
            extensions: ['safetensors'],
            light: true,
            format: 'svg',
            names: []
        },
        { icon: 'sails', extensions: [], format: 'svg', names: ['.sailsrc'] },
        { icon: 'saltstack', extensions: ['sls'], format: 'svg', names: [] },
        {
            icon: 'sapphire_framework_cli',
            extensions: [],
            format: 'svg',
            names: ['.sapphirerc.json', '.sapphirerc.yml', '.sapphirerc']
        },
        { icon: 'sass', extensions: ['sass'], format: 'svg', names: [] },
        { icon: 'scss', extensions: ['scssm'], format: 'svg', names: [] },
        { icon: 'sentry', extensions: [], format: 'svg', names: ['.sentryclirc'] },
        {
            icon: 'serverless',
            extensions: [],
            filenamesGlob: ['serverless'],
            extensionsGlob: ['yml', 'json', 'js', 'ts'],
            format: 'svg',
            names: ['serverless.yml', 'serverless.json', 'serverless.js', 'serverless.ts']
        },
        {
            icon: 'sequelize',
            extensions: [],
            filenamesGlob: ['.sequelizerc'],
            extensionsGlob: ['js', 'json'],
            format: 'svg',
            names: ['.sequelizerc', '.sequelizerc.js', '.sequelizerc.json']
        },
        { icon: 'shaderlab', extensions: ['unity'], light: true, format: 'svg', names: [] },
        { icon: 'shell', extensions: ['fish'], format: 'svg', names: [] },
        { icon: 'shellcheck', extensions: [], format: 'svg', names: ['.shellcheckrc'] },
        { icon: 'shuttle', extensions: [], format: 'svg', names: ['Shuttle.toml'] },
        { icon: 'siyuan', extensions: ['sy'], format: 'svg', names: [] },
        { icon: 'sketch', extensions: ['sketch'], format: 'svg', names: [] },
        {
            icon: 'slashup',
            extensions: [],
            filenamesGlob: ['slash-up.config'],
            extensionsGlob: ['js'],
            format: 'svg',
            names: ['slash-up.config.js']
        },
        { icon: 'sln', extensions: ['sln', 'slnx'], format: 'svg', names: [] },
        { icon: 'skipper', extensions: ['eskip'], format: 'svg', names: [] },
        { icon: 'snapcraft', extensions: [], format: 'svg', names: ['snapcraft.yaml'] },
        {
            icon: 'snaplet',
            extensions: [],
            format: 'svg',
            names: ['snaplet.config.js', 'snaplet.config.ts']
        },
        { icon: 'snyk', extensions: [], format: 'svg', names: ['.snyk'] },
        {
            icon: 'solidarity',
            extensions: [],
            format: 'svg',
            names: ['.solidarity', '.solidarity.json']
        },
        { icon: 'spacengine', extensions: ['spe'], format: 'svg', names: [] },
        { icon: 'spin', extensions: [], light: true, format: 'svg', names: ['spin.toml'] },
        { icon: 'sqlite', extensions: ['sqlite', 'sqlite3', 'db3'], format: 'svg', names: [] },
        { icon: 'sss', extensions: ['sss'], format: 'svg', names: [] },
        {
            icon: 'sst',
            extensions: [],
            filenamesGlob: ['sst-env', 'sst.config'],
            extensionsGlob: ['d.ts', 'ts', 'js'],
            format: 'svg',
            names: [
                'sst-env.d.ts',
                'sst-env.ts',
                'sst-env.js',
                'sst.config.d.ts',
                'sst.config.ts',
                'sst.config.js'
            ]
        },
        { icon: 'stata', extensions: ['dta'], format: 'svg', names: [] },
        {
            icon: 'stryker',
            extensions: [],
            filenamesGlob: [
                'stryker.conf',
                '.stryker.conf',
                'stryker.config',
                '.stryker.config',
                'stryker-config',
                'stryker4s'
            ],
            extensionsGlob: ['mjs', 'cjs', 'js', 'conf', 'json'],
            format: 'svg',
            names: [
                'stryker.conf.mjs',
                'stryker.conf.cjs',
                'stryker.conf.js',
                'stryker.conf.conf',
                'stryker.conf.json',
                '.stryker.conf.mjs',
                '.stryker.conf.cjs',
                '.stryker.conf.js',
                '.stryker.conf.conf',
                '.stryker.conf.json',
                'stryker.config.mjs',
                'stryker.config.cjs',
                'stryker.config.js',
                'stryker.config.conf',
                'stryker.config.json',
                '.stryker.config.mjs',
                '.stryker.config.cjs',
                '.stryker.config.js',
                '.stryker.config.conf',
                '.stryker.config.json',
                'stryker-config.mjs',
                'stryker-config.cjs',
                'stryker-config.js',
                'stryker-config.conf',
                'stryker-config.json',
                'stryker4s.mjs',
                'stryker4s.cjs',
                'stryker4s.js',
                'stryker4s.conf',
                'stryker4s.json'
            ]
        },
        {
            icon: 'stylelint',
            extensions: [],
            filenamesGlob: ['stylelint.config', '.stylelintrc'],
            extensionsGlob: ['js', 'json', 'yaml', 'yml', 'ts', 'cjs', 'mjs'],
            light: true,
            format: 'svg',
            names: [
                '.stylelintrc',
                '.stylelintignore',
                '.stylelintcache',
                'stylelint.config.js',
                'stylelint.config.json',
                'stylelint.config.yaml',
                'stylelint.config.yml',
                'stylelint.config.ts',
                'stylelint.config.cjs',
                'stylelint.config.mjs',
                '.stylelintrc.js',
                '.stylelintrc.json',
                '.stylelintrc.yaml',
                '.stylelintrc.yml',
                '.stylelintrc.ts',
                '.stylelintrc.cjs',
                '.stylelintrc.mjs'
            ]
        },
        {
            icon: 'stylish_haskell',
            extensions: [],
            format: 'svg',
            names: ['.stylish-haskell.yaml']
        },
        { icon: 'storyboard', extensions: ['storyboard'], format: 'svg', names: [] },
        {
            icon: 'storybook',
            extensions: [],
            filenamesGlob: ['story', 'stories'],
            extensionsGlob: ['js', 'jsx', 'ts', 'tsx', 'mdx'],
            format: 'svg',
            names: []
        },
        { icon: 'sublime', extensions: ['sublime-project'], format: 'svg', names: [] },
        { icon: 'subversion', extensions: [], format: 'svg', names: ['.svnignore'] },
        { icon: 'svelteconfig', extensions: [], format: 'svg', names: ['svelte.config.js'] },
        { icon: 'svg', extensions: ['svg'], format: 'svg', names: [] },
        {
            icon: 'svgo',
            extensions: [],
            filenamesGlob: ['svgo.config'],
            extensionsGlob: ['cjs', 'js', 'mjs'],
            format: 'svg',
            names: ['svgo.config.cjs', 'svgo.config.js', 'svgo.config.mjs']
        },
        { icon: 'swc', extensions: [], format: 'svg', names: ['.swcrc'] },
        { icon: 'swift', extensions: [], format: 'svg', names: ['package.pins'] },
        {
            icon: 'symfony',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['symfony.lock']
        },
        {
            icon: 'tamagui',
            extensions: [],
            filenamesGlob: ['tamagui', 'tamagui.config'],
            extensionsGlob: ['js', 'mjs', 'cjs', 'ts', 'mts', 'cts'],
            format: 'svg',
            names: [
                'tamagui.js',
                'tamagui.mjs',
                'tamagui.cjs',
                'tamagui.ts',
                'tamagui.mts',
                'tamagui.cts',
                'tamagui.config.js',
                'tamagui.config.mjs',
                'tamagui.config.cjs',
                'tamagui.config.ts',
                'tamagui.config.mts',
                'tamagui.config.cts'
            ]
        },
        {
            icon: 'tailwind',
            extensions: [],
            filenamesGlob: ['tailwind', 'tailwind.config', '.tailwind', '.tailwindrc'],
            extensionsGlob: ['js', 'cjs', 'coffee', 'ts', 'json', 'mjs'],
            format: 'svg',
            names: [
                'tailwind.js',
                'tailwind.cjs',
                'tailwind.coffee',
                'tailwind.ts',
                'tailwind.json',
                'tailwind.mjs',
                'tailwind.config.js',
                'tailwind.config.cjs',
                'tailwind.config.coffee',
                'tailwind.config.ts',
                'tailwind.config.json',
                'tailwind.config.mjs',
                '.tailwind.js',
                '.tailwind.cjs',
                '.tailwind.coffee',
                '.tailwind.ts',
                '.tailwind.json',
                '.tailwind.mjs',
                '.tailwindrc.js',
                '.tailwindrc.cjs',
                '.tailwindrc.coffee',
                '.tailwindrc.ts',
                '.tailwindrc.json',
                '.tailwindrc.mjs'
            ]
        },
        {
            icon: 'tauri',
            extensions: [],
            format: 'svg',
            names: ['tauri.conf.json', '.taurignore']
        },
        { icon: 'templ', extensions: ['templ'], format: 'svg', names: [] },
        { icon: 'tt', extensions: ['tt2'], format: 'svg', names: [] },
        { icon: 'tcl', extensions: ['tcl', 'exp'], format: 'svg', names: [] },
        {
            icon: 'terraform',
            extensions: ['tfstate', 'tfvars', 'tf', 'tf.json'],
            format: 'svg',
            names: []
        },
        { icon: 'tm', extensions: ['tm', 'tm.hcl'], format: 'svg', light: true, names: [] },
        { icon: 'test', extensions: ['tst'], format: 'svg', names: [] },
        {
            icon: 'testcafe',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['.testcaferc.json']
        },
        {
            icon: 'testjs',
            extensions: [],
            filenamesGlob: ['test', 'spec'],
            extensionsGlob: ['js', 'jsx', 'mjs'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'testplane',
            extensions: [],
            filenamesGlob: ['testplane.conf', 'testplane.config'],
            extensionsGlob: ['ts', 'js', 'cts', 'cjs'],
            format: 'svg',
            names: [
                'testplane.conf.ts',
                'testplane.conf.js',
                'testplane.conf.cts',
                'testplane.conf.cjs',
                'testplane.config.ts',
                'testplane.config.js',
                'testplane.config.cts',
                'testplane.config.cjs'
            ]
        },
        {
            icon: 'testplane',
            extensions: [
                'testplane.ts',
                'testplane.js',
                'testplane.cts',
                'testplane.cjs',
                'testplane.tsx',
                'testplane.jsx'
            ],
            format: 'svg',
            names: []
        },
        {
            icon: 'testts',
            extensions: [],
            filenamesGlob: ['test', 'spec', 'e2e-test', 'e2e-spec', 'test-d'],
            extensionsGlob: ['ts', 'tsx', 'mts'],
            format: 'svg',
            names: []
        },
        { icon: 'tex', extensions: ['texi', 'tikz'], light: true, format: 'svg', names: [] },
        { icon: 'text', extensions: ['csv', 'tsv', 'txt'], format: 'svg', names: [] },
        { icon: 'tiltfile', extensions: [], format: 'svg', names: ['.tiltignore'] },
        { icon: 'tfs', extensions: [], format: 'svg', names: ['.tfignore'] },
        { icon: 'tmux', extensions: [], light: true, format: 'svg', names: ['.tmux.conf'] },
        { icon: 'todo', extensions: ['todo'], light: true, format: 'svg', names: [] },
        { icon: 'tox', extensions: [], format: 'svg', names: ['tox.ini'] },
        { icon: 'travis', extensions: [], format: 'svg', names: ['.travis.yml'] },
        { icon: 'tree', extensions: ['tree'], light: true, format: 'svg', names: [] },
        { icon: 'tres', extensions: ['tres'], format: 'svg', names: [] },
        {
            icon: 'truffle',
            extensions: [],
            filenamesGlob: ['truffle-config'],
            extensionsGlob: ['js', 'ts'],
            format: 'svg',
            names: ['truffle-config.js', 'truffle-config.ts']
        },
        { icon: 'trunk', extensions: [], format: 'svg', names: ['trunk.yaml'] },
        { icon: 'tsbuildinfo', extensions: ['tsbuildinfo'], format: 'svg', names: [] },
        { icon: 'tscn', extensions: ['tscn'], format: 'svg', names: [] },
        {
            icon: 'tsconfig',
            extensions: [],
            filenamesGlob: [
                'tsconfig',
                'tsconfig.app',
                'tsconfig.base',
                'tsconfig.build',
                'tsconfig.cjs',
                'tsconfig.common',
                'tsconfig.dev',
                'tsconfig.development',
                'tsconfig.e2e',
                'tsconfig.eslint',
                'tsconfig.esm',
                'tsconfig.mjs',
                'tsconfig.node',
                'tsconfig.prod',
                'tsconfig.production',
                'tsconfig.server',
                'tsconfig.spec',
                'tsconfig.staging',
                'tsconfig.test',
                'tsconfig.types',
                'tsconfig.lib',
                'tsconfig.lib.prod'
            ],
            extensionsGlob: ['json'],
            format: 'svg',
            names: [
                'tsconfig.json',
                'tsconfig.app.json',
                'tsconfig.base.json',
                'tsconfig.build.json',
                'tsconfig.cjs.json',
                'tsconfig.common.json',
                'tsconfig.dev.json',
                'tsconfig.development.json',
                'tsconfig.e2e.json',
                'tsconfig.eslint.json',
                'tsconfig.esm.json',
                'tsconfig.mjs.json',
                'tsconfig.node.json',
                'tsconfig.prod.json',
                'tsconfig.production.json',
                'tsconfig.server.json',
                'tsconfig.spec.json',
                'tsconfig.staging.json',
                'tsconfig.test.json',
                'tsconfig.types.json',
                'tsconfig.lib.json',
                'tsconfig.lib.prod.json'
            ]
        },
        {
            icon: 'tslint',
            extensions: [],
            format: 'svg',
            names: ['tslint.json', 'tslint.yaml', 'tslint.yml']
        },
        {
            icon: 'typedoc',
            extensions: [],
            filenamesGlob: ['typedoc'],
            extensionsGlob: ['js', 'json'],
            format: 'svg',
            names: ['typedoc.js', 'typedoc.json']
        },
        {
            icon: 'typescriptdef',
            extensions: ['d.ts', 'd.cts', 'd.mts'],
            format: 'svg',
            names: []
        },
        { icon: 'uiua', extensions: ['ua'], format: 'svg', names: [] },
        {
            icon: 'unibeautify',
            extensions: [],
            filenamesGlob: ['.unibeautifyrc'],
            extensionsGlob: ['js', 'json', 'yaml', 'yml'],
            light: true,
            format: 'svg',
            names: [
                '.unibeautifyrc',
                'unibeautify.config.js',
                '.unibeautifyrc.js',
                '.unibeautifyrc.json',
                '.unibeautifyrc.yaml',
                '.unibeautifyrc.yml'
            ]
        },
        { icon: 'unison', extensions: ['u'], format: 'svg', names: [] },
        {
            icon: 'unlicense',
            extensions: [],
            filenamesGlob: ['unlicense', 'unlicence'],
            extensionsGlob: ['md', 'txt'],
            format: 'svg',
            names: [
                'unlicense',
                'unlicence',
                'unlicense.md',
                'unlicense.txt',
                'unlicence.md',
                'unlicence.txt'
            ]
        },
        {
            icon: 'unocss',
            filenamesGlob: ['uno.config', 'unocss.config'],
            extensions: [],
            extensionsGlob: ['js', 'mjs', 'ts', 'mts'],
            format: 'svg',
            names: [
                'uno.config.js',
                'uno.config.mjs',
                'uno.config.ts',
                'uno.config.mts',
                'unocss.config.js',
                'unocss.config.mjs',
                'unocss.config.ts',
                'unocss.config.mts'
            ]
        },
        { icon: 'vagrant', extensions: [], format: 'svg', names: ['vagrantfile'] },
        { icon: 'vala', extensions: ['vala'], format: 'svg', names: [] },
        { icon: 'vanilla_extract', extensions: ['css.ts'], format: 'svg', names: [] },
        { icon: 'vapi', extensions: ['vapi'], format: 'svg', names: [] },
        { icon: 'vash', extensions: ['vash'], light: true, format: 'svg', names: [] },
        { icon: 'vapor', extensions: [], format: 'svg', names: ['vapor.yml'] },
        { icon: 'vbhtml', extensions: ['vbhtml'], format: 'svg', names: [] },
        { icon: 'vbproj', extensions: ['vbproj'], format: 'svg', names: [] },
        { icon: 'vcxproj', extensions: ['vcxproj'], format: 'svg', names: [] },
        { icon: 'vento', extensions: ['vto', 'vento'], format: 'svg', names: [] },
        {
            icon: 'video',
            extensions: [
                '3g2',
                '3gp',
                'asf',
                'amv',
                'avi',
                'divx',
                'qt',
                'f4a',
                'f4b',
                'f4p',
                'f4v',
                'flv',
                'm2v',
                'm4v',
                'mkv',
                'mk3d',
                'mov',
                'mp2',
                'mp4',
                'mpe',
                'mpeg',
                'mpeg2',
                'mpg',
                'mpv',
                'nsv',
                'ogv',
                'rm',
                'rmvb',
                'svi',
                'vob',
                'webm',
                'wmv'
            ],
            format: 'svg',
            names: []
        },
        { icon: 'vim', extensions: [], format: 'svg', names: ['.vimrc', '.gvimrc'] },
        {
            icon: 'vite',
            filenamesGlob: ['vite.config'],
            extensions: [],
            extensionsGlob: ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'],
            format: 'svg',
            names: [
                'vite.config.js',
                'vite.config.mjs',
                'vite.config.ts',
                'vite.config.cjs',
                'vite.config.mts',
                'vite.config.cts'
            ]
        },
        {
            icon: 'vitest',
            filenamesGlob: ['vitest.config'],
            extensions: [],
            extensionsGlob: ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'],
            format: 'svg',
            names: [
                'vitest.config.js',
                'vitest.config.mjs',
                'vitest.config.ts',
                'vitest.config.cjs',
                'vitest.config.mts',
                'vitest.config.cts'
            ]
        },
        {
            icon: 'vitest',
            filenamesGlob: ['vitest.workspace', 'vitest.projects'],
            extensions: [],
            extensionsGlob: ['json', 'js', 'mjs', 'ts', 'cjs', 'mts', 'cts'],
            format: 'svg',
            names: [
                'vitest.workspace.json',
                'vitest.workspace.js',
                'vitest.workspace.mjs',
                'vitest.workspace.ts',
                'vitest.workspace.cjs',
                'vitest.workspace.mts',
                'vitest.workspace.cts',
                'vitest.projects.json',
                'vitest.projects.js',
                'vitest.projects.mjs',
                'vitest.projects.ts',
                'vitest.projects.cjs',
                'vitest.projects.mts',
                'vitest.projects.cts'
            ]
        },
        {
            icon: 'vscode',
            extensions: [],
            filenamesGlob: ['launch', 'tasks', 'vscodeignore'],
            extensionsGlob: ['json'],
            format: 'svg',
            names: ['.vscodeignore', 'launch.json', 'tasks.json', 'vscodeignore.json']
        },
        {
            icon: 'vscode',
            extensions: ['code-snippets', 'code-workspace'],
            filenamesGlob: [],
            extensionsGlob: [],
            format: 'svg',
            names: []
        },
        {
            icon: 'vscode_test',
            filenamesGlob: ['.vscode-test'],
            extensions: [],
            extensionsGlob: ['js', 'json', 'mjs'],
            format: 'svg',
            names: ['.vscode-test.js', '.vscode-test.json', '.vscode-test.mjs']
        },
        { icon: 'vsix', extensions: ['vsix'], light: true, format: 'svg', names: [] },
        {
            icon: 'vsixmanifest',
            extensions: ['vsixmanifest'],
            light: true,
            format: 'svg',
            names: []
        },
        {
            icon: 'vueconfig',
            extensions: [],
            format: 'svg',
            names: ['.vuerc', 'vue.config.js', 'vue.config.cjs', 'vue.config.mjs']
        },
        { icon: 'vyper', extensions: ['vyi'], format: 'svg', names: [] },
        {
            icon: 'wallaby',
            extensions: [],
            filenamesGlob: ['wallaby', 'wallaby.conf', '.wallaby', '.wallaby.conf'],
            extensionsGlob: ['json', 'js', 'ts', 'coffee'],
            format: 'svg',
            names: [
                'wallaby.json',
                'wallaby.js',
                'wallaby.ts',
                'wallaby.coffee',
                'wallaby.conf.json',
                'wallaby.conf.js',
                'wallaby.conf.ts',
                'wallaby.conf.coffee',
                '.wallaby.json',
                '.wallaby.js',
                '.wallaby.ts',
                '.wallaby.coffee',
                '.wallaby.conf.json',
                '.wallaby.conf.js',
                '.wallaby.conf.ts',
                '.wallaby.conf.coffee'
            ]
        },
        { icon: 'wally', extensions: [], format: 'svg', names: ['wally.toml', 'wally.lock'] },
        { icon: 'watchmanconfig', extensions: [], format: 'svg', names: ['.watchmanconfig'] },
        { icon: 'wasm', extensions: ['wasm'], format: 'svg', names: [] },
        {
            icon: 'wdio',
            extensions: [],
            filenamesGlob: ['wdio', 'wdio.conf'],
            extensionsGlob: ['json', 'js', 'mjs', 'cjs', 'ts', 'mts', 'cts'],
            format: 'svg',
            names: [
                'wdio.json',
                'wdio.js',
                'wdio.mjs',
                'wdio.cjs',
                'wdio.ts',
                'wdio.mts',
                'wdio.cts',
                'wdio.conf.json',
                'wdio.conf.js',
                'wdio.conf.mjs',
                'wdio.conf.cjs',
                'wdio.conf.ts',
                'wdio.conf.mts',
                'wdio.conf.cts'
            ]
        },
        {
            icon: 'webpack',
            extensions: [],
            filenamesGlob: [
                'webpack.base.conf',
                'webpack.common',
                'webpack.config',
                'webpack.config.base',
                'webpack.config.build',
                'webpack.config.common',
                'webpack.config.dev',
                'webpack.config.development',
                'webpack.config.staging',
                'webpack.config.test',
                'webpack.config.prod',
                'webpack.config.production',
                'webpack.config.babel',
                'webpack.config.base.babel',
                'webpack.config.common.babel',
                'webpack.config.dev.babel',
                'webpack.config.development.babel',
                'webpack.config.staging.babel',
                'webpack.config.test.babel',
                'webpack.config.prod.babel',
                'webpack.config.production.babel',
                'webpack.dev',
                'webpack.dev.conf',
                'webpack.local',
                'webpack.prod',
                'webpack.prod.conf',
                'webpack.main.config',
                'webpack.mix',
                'webpack.plugins',
                'webpack.renderer.config',
                'webpack.rules',
                'webpack.test.conf'
            ],
            extensionsGlob: ['js', 'cjs', 'mjs', 'coffee', 'ts'],
            format: 'svg',
            names: [
                'webpack.base.conf.js',
                'webpack.base.conf.cjs',
                'webpack.base.conf.mjs',
                'webpack.base.conf.coffee',
                'webpack.base.conf.ts',
                'webpack.common.js',
                'webpack.common.cjs',
                'webpack.common.mjs',
                'webpack.common.coffee',
                'webpack.common.ts',
                'webpack.config.js',
                'webpack.config.cjs',
                'webpack.config.mjs',
                'webpack.config.coffee',
                'webpack.config.ts',
                'webpack.config.base.js',
                'webpack.config.base.cjs',
                'webpack.config.base.mjs',
                'webpack.config.base.coffee',
                'webpack.config.base.ts',
                'webpack.config.build.js',
                'webpack.config.build.cjs',
                'webpack.config.build.mjs',
                'webpack.config.build.coffee',
                'webpack.config.build.ts',
                'webpack.config.common.js',
                'webpack.config.common.cjs',
                'webpack.config.common.mjs',
                'webpack.config.common.coffee',
                'webpack.config.common.ts',
                'webpack.config.dev.js',
                'webpack.config.dev.cjs',
                'webpack.config.dev.mjs',
                'webpack.config.dev.coffee',
                'webpack.config.dev.ts',
                'webpack.config.development.js',
                'webpack.config.development.cjs',
                'webpack.config.development.mjs',
                'webpack.config.development.coffee',
                'webpack.config.development.ts',
                'webpack.config.staging.js',
                'webpack.config.staging.cjs',
                'webpack.config.staging.mjs',
                'webpack.config.staging.coffee',
                'webpack.config.staging.ts',
                'webpack.config.test.js',
                'webpack.config.test.cjs',
                'webpack.config.test.mjs',
                'webpack.config.test.coffee',
                'webpack.config.test.ts',
                'webpack.config.prod.js',
                'webpack.config.prod.cjs',
                'webpack.config.prod.mjs',
                'webpack.config.prod.coffee',
                'webpack.config.prod.ts',
                'webpack.config.production.js',
                'webpack.config.production.cjs',
                'webpack.config.production.mjs',
                'webpack.config.production.coffee',
                'webpack.config.production.ts',
                'webpack.config.babel.js',
                'webpack.config.babel.cjs',
                'webpack.config.babel.mjs',
                'webpack.config.babel.coffee',
                'webpack.config.babel.ts',
                'webpack.config.base.babel.js',
                'webpack.config.base.babel.cjs',
                'webpack.config.base.babel.mjs',
                'webpack.config.base.babel.coffee',
                'webpack.config.base.babel.ts',
                'webpack.config.common.babel.js',
                'webpack.config.common.babel.cjs',
                'webpack.config.common.babel.mjs',
                'webpack.config.common.babel.coffee',
                'webpack.config.common.babel.ts',
                'webpack.config.dev.babel.js',
                'webpack.config.dev.babel.cjs',
                'webpack.config.dev.babel.mjs',
                'webpack.config.dev.babel.coffee',
                'webpack.config.dev.babel.ts',
                'webpack.config.development.babel.js',
                'webpack.config.development.babel.cjs',
                'webpack.config.development.babel.mjs',
                'webpack.config.development.babel.coffee',
                'webpack.config.development.babel.ts',
                'webpack.config.staging.babel.js',
                'webpack.config.staging.babel.cjs',
                'webpack.config.staging.babel.mjs',
                'webpack.config.staging.babel.coffee',
                'webpack.config.staging.babel.ts',
                'webpack.config.test.babel.js',
                'webpack.config.test.babel.cjs',
                'webpack.config.test.babel.mjs',
                'webpack.config.test.babel.coffee',
                'webpack.config.test.babel.ts',
                'webpack.config.prod.babel.js',
                'webpack.config.prod.babel.cjs',
                'webpack.config.prod.babel.mjs',
                'webpack.config.prod.babel.coffee',
                'webpack.config.prod.babel.ts',
                'webpack.config.production.babel.js',
                'webpack.config.production.babel.cjs',
                'webpack.config.production.babel.mjs',
                'webpack.config.production.babel.coffee',
                'webpack.config.production.babel.ts',
                'webpack.dev.js',
                'webpack.dev.cjs',
                'webpack.dev.mjs',
                'webpack.dev.coffee',
                'webpack.dev.ts',
                'webpack.dev.conf.js',
                'webpack.dev.conf.cjs',
                'webpack.dev.conf.mjs',
                'webpack.dev.conf.coffee',
                'webpack.dev.conf.ts',
                'webpack.local.js',
                'webpack.local.cjs',
                'webpack.local.mjs',
                'webpack.local.coffee',
                'webpack.local.ts',
                'webpack.prod.js',
                'webpack.prod.cjs',
                'webpack.prod.mjs',
                'webpack.prod.coffee',
                'webpack.prod.ts',
                'webpack.prod.conf.js',
                'webpack.prod.conf.cjs',
                'webpack.prod.conf.mjs',
                'webpack.prod.conf.coffee',
                'webpack.prod.conf.ts',
                'webpack.main.config.js',
                'webpack.main.config.cjs',
                'webpack.main.config.mjs',
                'webpack.main.config.coffee',
                'webpack.main.config.ts',
                'webpack.mix.js',
                'webpack.mix.cjs',
                'webpack.mix.mjs',
                'webpack.mix.coffee',
                'webpack.mix.ts',
                'webpack.plugins.js',
                'webpack.plugins.cjs',
                'webpack.plugins.mjs',
                'webpack.plugins.coffee',
                'webpack.plugins.ts',
                'webpack.renderer.config.js',
                'webpack.renderer.config.cjs',
                'webpack.renderer.config.mjs',
                'webpack.renderer.config.coffee',
                'webpack.renderer.config.ts',
                'webpack.rules.js',
                'webpack.rules.cjs',
                'webpack.rules.mjs',
                'webpack.rules.coffee',
                'webpack.rules.ts',
                'webpack.test.conf.js',
                'webpack.test.conf.cjs',
                'webpack.test.conf.mjs',
                'webpack.test.conf.coffee',
                'webpack.test.conf.ts'
            ]
        },
        { icon: 'wercker', extensions: [], format: 'svg', names: ['wercker.yml'] },
        { icon: 'wikitext', extensions: ['wikitext'], format: 'svg', names: [] },
        {
            icon: 'windi',
            extensions: [],
            format: 'svg',
            names: ['windi.config.ts', 'windi.config.js']
        },
        { icon: 'wit', extensions: ['wit'], format: 'svg', names: [] },
        {
            icon: 'word',
            extensions: ['doc', 'docx', 'docm', 'dot', 'dotx', 'dotm', 'wll'],
            format: 'svg',
            names: []
        },
        { icon: 'wpml', extensions: [], format: 'svg', names: ['wpml-config.xml'] },
        { icon: 'wxml', extensions: ['wxml'], format: 'svg', names: [] },
        { icon: 'wxss', extensions: ['wxss'], format: 'svg', names: [] },
        { icon: 'wxt', extensions: [], format: 'svg', names: ['wxt.config.ts'] },
        { icon: 'xcode', extensions: ['xcodeproj'], format: 'svg', names: [] },
        { icon: 'xfl', extensions: ['xfl'], light: true, format: 'svg', names: [] },
        { icon: 'xib', extensions: ['xib'], format: 'svg', names: [] },
        { icon: 'xliff', extensions: ['xliff', 'xlf'], format: 'svg', names: [] },
        { icon: 'xml', extensions: ['pex', 'tmlanguage'], format: 'svg', names: [] },
        { icon: 'xo', extensions: [], format: 'svg', names: ['.xo-config'] },
        {
            icon: 'xo',
            extensions: [],
            filenamesGlob: ['xo.config'],
            extensionsGlob: ['js', 'cjs'],
            format: 'svg',
            names: ['xo.config.js', 'xo.config.cjs']
        },
        {
            icon: 'xo',
            extensions: [],
            filenamesGlob: ['.xo-config'],
            extensionsGlob: ['js', 'json', 'cjs'],
            format: 'svg',
            names: ['.xo-config.js', '.xo-config.json', '.xo-config.cjs']
        },
        { icon: 'xorg', extensions: [], light: true, format: 'svg', names: ['.xcompose'] },
        { icon: 'yamllint', extensions: [], format: 'svg', names: ['.yamllint'] },
        {
            icon: 'yandex',
            extensions: [],
            format: 'svg',
            names: ['.yaspellerrc', '.yaspeller.json']
        },
        {
            icon: 'yarn',
            extensions: [],
            format: 'svg',
            names: [
                'yarn.lock',
                '.yarnrc',
                '.yarnrc.yml',
                '.yarnclean',
                '.yarn-integrity',
                '.yarn-metadata.json',
                '.yarnignore'
            ]
        },
        { icon: 'yeoman', extensions: [], format: 'svg', names: ['.yo-rc.json'] },
        {
            icon: 'vercel',
            extensions: [],
            light: true,
            format: 'svg',
            names: ['now.json', '.nowignore', 'vercel.json', '.vercelignore']
        },
        { icon: 'liara', extensions: [], format: 'svg', names: ['liara.json', '.liaraignore'] },
        { icon: 'turbo', extensions: [], light: true, format: 'svg', names: ['turbo.json'] },
        {
            icon: 'doppler',
            extensions: [],
            format: 'svg',
            names: ['doppler.yaml', 'doppler-template.yaml']
        },
        {
            icon: 'zip',
            extensions: [
                'zip',
                'rar',
                '7z',
                'tar',
                'tgz',
                'bz',
                'gz',
                'bzip2',
                'xz',
                'bz2',
                'whl',
                'zipx',
                'br'
            ],
            format: 'svg',
            names: []
        },
        {
            icon: 'knip',
            extensions: [],
            format: 'svg',
            names: [
                'knip.json',
                'knip.jsonc',
                '.knip.json',
                '.knip.jsonc',
                'knip.ts',
                'knip.js',
                'knip.config.ts',
                'knip.config.js'
            ]
        },
        { icon: 'temp', extensions: ['temp', 'tmp'], format: 'svg', names: [] },
        { icon: 'cmd', extensions: ['cmd', 'bat'], format: 'svg', names: [] },
        { icon: 'database', extensions: ['dat', 'data'], format: 'svg', names: [] },
        { icon: 'ini', extensions: ['sys'], format: 'svg', names: [] },
        { icon: 'js', extensions: ['js'], format: 'svg', names: [] },
        { icon: 'typescript', extensions: ['ts'], format: 'svg', names: [] },
        { icon: 'html', extensions: ['htm', 'html'], format: 'svg', names: [] },
        { icon: 'css', extensions: ['css'], format: 'svg', names: [] },
        {
            icon: '_unknow_symbol_file',
            extensions: [],
            format: 'svg',
            names: ['_unknow_symbol_file']
        },
        {
            icon: 'sql',
            extensions: ['sql'],
            format: 'svg',
            names: []
        }
    ]
}

let extensions = new Map()
let names = new Map()

defs.supported.forEach(it => {
    it.names.forEach(name => names.set(name, it))
    it.extensions.forEach(extension => extensions.set(extension, it))
})

module.exports = function (name) {
    let icon = names.get(name)
    if (icon) {
        return icon
    }
    let index = name.lastIndexOf('.')
    if (index != -1) {
        let extension = name.substring(index + 1)
        icon = extensions.get(extension)
        if (icon) {
            return icon
        }
    }
    return defs.default
}
